package com.piece.admin.api.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.ArrayList;
import java.util.List;

@Data
@NoArgsConstructor
@ApiModel(value = "菜单权限类")
public class SysMenuDTO {

    @ApiModelProperty(value = "主键")
    private Long menuId;

    @ApiModelProperty(value = "菜单名称")
    private String menuName;

    @ApiModelProperty(value = "请求地址")
    private String path;

    @ApiModelProperty(value = "重定向地址")
    private String redirect;

    @ApiModelProperty(value = "组件名称")
    private String component;

    @ApiModelProperty(value = "打开方式", notes = "default,_blank")
    private String target;

    @ApiModelProperty(value = "菜单类型", notes = "N导航 M目录 C菜单 B按钮")
    private String menuType;

    @ApiModelProperty(value = "权限标识")
    private String perms;

    @ApiModelProperty(value = "菜单图标", notes = "默认#")
    private String icon;

    @ApiModelProperty(value = "菜单状态", notes = "0显示 1隐藏")
    private String visible;

    @ApiModelProperty(value = "子菜单标识")
    private boolean hasChildren;

    @ApiModelProperty(value = "子菜单列表")
    private List<SysMenuDTO> children = new ArrayList<>();
}
